I. Field of the Invention
The present invention relates to a video encoder for coding of a video signal prior to transmission through a medium. More particularly, the present invention pertains to a technique for encoding a signal using a perceptual preprocessor for considering human vision perceptual limitations.
II. Description of the Related Art
Video information in the form of a data bit stream is typically transmitted over a medium, e.g. the internet, in a packetized stream. Such video information is obtained from a video camera which generates a video signal containing a series of successive-in-time video frames depicting video images. Each frame consists of a number of picture elements or pixels which are divided into groups to form blocks. The video signal is processed, frame-by-frame, and encoded when necessary, such as when an error signal is detected between two adjacent-in-time frames, i.e. between a present frame and a prior frame. In this manner, only data affecting a change in object motion or pixel intensity need be transmitted, thus yielding an efficient use of available transmitter communication bandwidth.
For example, in a typical video signal encoder scheme each frame is divided into macro blocks of 16.times.16 pixels and an error signal representing the difference between pixel intensity of a current macro block and a corresponding prior macro block is obtained. The error signal is then converted from the spatial domain to the frequency domain by a transform function, such as a discrete cosine transform device. The digitized error signal is then quantized and entropy coded for transmission to a receiver. A feedback loop is provided which uses the quantized error signal to compensate for and estimate motion of objects in a current frame by comparing the position of the objects to a position from the prior frame.
Video data transmitted in packets is usually protected by a parity check scheme as known by those having ordinary skill in the art. Thus, the majority of internet video errors results from the loss of an entire packet during, for example, network congestion and buffer overflow. Such packet loss causes single or multiple macro block losses in the decoding process which results in severe degradation in perceived quality and error propagation. To combat video signal degradation and error propagation resulting from packet loss, layered video signals are used, wherein the video signal is divided into a base layer and an enhancement layer. The enhancement layer typically provides refinement information that is added to the base layer to provide higher quality, and which is transmitted with lower priority than the base layer. A known alternative approach is to use the second or enhancement layer to transmit a redundant version of the base layer when high losses are detected. Thus, the base layer will be transmitted on two distinct data streams with the hope that at least one of the streams will be correctly received.
The drawbacks of such prior art schemes is that they fail to adequately take into account the limitations of human visual perception when viewing a video signal. For example, not all lost video information, in the form of lost data packets, is visually perceptible by a viewer. Thus, the redundant transmission of such information is an inefficient use of bandwidth, as such information is not necessary and will not result in an appreciable difference to a viewer of the video information that is contained in the redundantly transmitted data packets.